#include <iostream>
#include <stdio.h>

extern "C"
{
#include <libavcodec/avcodec.h>
// #include <libavformat/avformat.h>
// #include <libavutil/imgutils.h>
// #include <libavutil/channel_layout.h> // 用户音频声道布局
// #include <libavutil/mathematics.h> // 用于数学相关操作
// #include <libavutil/timestamp.h> // 用于时间戳操作
// #include <libavformat/avformat.h> // 用于封装与解封装操作
// #include <libswscale/swscale.h> // 用于缩放、转换颜色格式操作
// #include <libswresample/swresample.h> // 用于进行音频采样率操作
// #include <libswresample/swresample.h>
// #include <libswscale/swscale.h>
// #include <libavutil/avutil.h>
// #include <libavutil/opt.h> // 设置操作选项操作
}

#include "./XDecode/xdecode.h"
/**
 * FFMPEG 6.1.1
*/

int thread_exit = 0;


int main(int argc, char **argv) {

    const AVCodec* acodec = NULL;
    const AVCodec* vcodec = NULL; 
    void* aiterator = NULL;
    void* viterator = NULL;

    while ((acodec = av_codec_iterate(&aiterator)) != NULL) {
        if (acodec->type == AVMEDIA_TYPE_AUDIO) {
            printf("Audio Codec Name: %s\n", acodec->name);
        }
    }

    while ((vcodec = av_codec_iterate(&viterator)) != NULL)
    {
        if (vcodec->type == AVMEDIA_TYPE_VIDEO)
        {
            printf("Video Codec Name: %s\n", vcodec->name);
        }
    }


    system("pause");
    return 0;
}








